Skip to content

Make StatusBarManager use main queue setup#50113

Closed
RSNara wants to merge 7 commits into
facebook:mainfrom
RSNara:export-D71348559
Closed

Make StatusBarManager use main queue setup#50113
RSNara wants to merge 7 commits into
facebook:mainfrom
RSNara:export-D71348559

Conversation

@RSNara
Copy link
Copy Markdown
Contributor

@RSNara RSNara commented Mar 18, 2025

Summary:

Rationale

Rendering can now include main -> js sync calls.

If we allow js -> main sync calls during rendering, react native can deadlock.

So, this diff moves the js -> main sync calls to "main queue module setup", which occurs before rendering.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D71348559

@facebook-github-bot facebook-github-bot added CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. p: Facebook Partner: Facebook Partner fb-exported labels Mar 18, 2025
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

1 similar comment
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from a1fdba7 to 0b3f60a Compare March 18, 2025 22:20
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from 0b3f60a to 22534ea Compare March 18, 2025 22:55
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from 22534ea to 8e9b5f6 Compare March 18, 2025 23:15
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from 8e9b5f6 to bfea6c2 Compare March 18, 2025 23:45
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from bfea6c2 to 7a1a091 Compare March 18, 2025 23:51
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from 7a1a091 to ec8b840 Compare March 18, 2025 23:59
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from ec8b840 to af93938 Compare March 19, 2025 00:11
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from af93938 to c67603a Compare March 19, 2025 16:39
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from c67603a to 8e91de0 Compare March 19, 2025 16:48
RSNara added 2 commits March 19, 2025 09:58
Summary:
Pull Request resolved: facebook#50111

## Rationale
Rendering can now include main -> js sync calls.

If we allow js -> main sync calls during rendering, react native can deadlock.

So, this diff moves the js -> main sync calls to "main queue module setup", which occurs before rendering.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D71480047
Summary:
Pull Request resolved: facebook#50109

## Rationale
Rendering can now include main -> js sync calls.

If we allow js -> main sync calls during rendering, react native can deadlock.

So, this diff moves the js -> main sync calls to "main queue module setup", which occurs before rendering.

Changelog: [Internal]

Differential Revision: D71347449

Reviewed By: mdvacca
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from 8e91de0 to 83d2dee Compare March 19, 2025 17:09
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from 83d2dee to 88e2b41 Compare March 19, 2025 21:16
Summary:
Pull Request resolved: facebook#50112

## Rationale
Rendering can now include main -> js sync calls.

If we allow js -> main sync calls during rendering, react native can deadlock.

So, this diff moves the js -> main sync calls to "main queue module setup", which occurs before rendering.

Changelog: [Internal]

Differential Revision: D71347448

Reviewed By: mdvacca
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from 88e2b41 to bca011e Compare March 19, 2025 21:31
Summary:
Pull Request resolved: facebook#50113

## Rationale
Rendering can now include main -> js sync calls.

If we allow js -> main sync calls during rendering, react native can deadlock.

So, this diff moves the js -> main sync calls to "main queue module setup", which occurs before rendering.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D71348559
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D71348559

@RSNara RSNara force-pushed the export-D71348559 branch from bca011e to aec510b Compare March 19, 2025 21:56
RSNara added a commit to RSNara/react-native that referenced this pull request Mar 19, 2025
Summary:
Pull Request resolved: facebook#50113

## Rationale
Rendering can now include main -> js sync calls.

If we allow js -> main sync calls during rendering, react native can deadlock.

So, this diff moves the js -> main sync calls to "main queue module setup", which occurs before rendering.

Changelog: [Internal]

Differential Revision: D71348559

Reviewed By: mdvacca
@facebook-github-bot facebook-github-bot added the Merged This PR has been merged. label Mar 20, 2025
@facebook-github-bot
Copy link
Copy Markdown
Contributor

This pull request has been merged in b4775eb.

@efstathiosntonas
Copy link
Copy Markdown

@RSNara thank you for this PR, how to use it with the experimental flag?

"StatusBarManager": {
              "unstableRequiresMainQueueSetup": true
            }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported Merged This PR has been merged. p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants